package com.qiaofang.service;

import com.qiaofang.common.model.PageDTO;
import com.qiaofang.common.model.UiListBean;
import com.qiaofang.common.response.CommonResponse;
import com.qiaofang.dto.PremisesDTO;
import com.qiaofang.entity.Premises;
import tk.mybatis.mapper.entity.Example;

import java.util.List;
import java.util.Set;

public interface PremisesService {

    /**
     * 楼盘关系表中绑定默认全部楼盘
     *
     * @param merchantCompanyId     渠道
     * @param distributionCompanyId 分销
     */
    void addPremisesRelation(Long merchantCompanyId, Long distributionCompanyId);

    /**
     * 楼盘名字，公司id查询楼盘
     *
     * @param premisesNameList
     * @param companyId
     * @return
     */
    List<Premises> listPremisesByName(Set<String> premisesNameList, Long companyId);

    /**
     * 楼盘列表
     *
     * @param dto
     * @return
     */
    UiListBean listPremises(PremisesDTO dto, PageDTO page);

    List<Premises> getListPremisesByExample(Example example);

    /**
     * 后台运营楼盘删除
     * @param id
     */
    void deletePremises(Long id);

    /**
     * 刷新楼盘置业顾问关联的报备关系
     * @param premisesId
     * @return
     */
    CommonResponse refreshAdviser(Long premisesId);

    /**
     * 刷新某个置业顾问的所有关联的报备关系
     * @param partnerId
     * @return
     */
    CommonResponse refreshAdviserByPartnerId(Long partnerId);
}
